Merged
Conversation
BREAKING CHANGE: Repository structure completely reorganized Old structure: - crates/syster-base, crates/syster-cli, crates/syster-lsp - editors/vscode-lsp, editors/vscode-modeller, editors/vscode-viewer - packages/diagram-core, packages/diagram-ui New structure: - core/ (syster-base) - cli/ (syster-cli) - lsp/server/ (syster-lsp) - lsp/vscode/ (vscode-lsp extension) - modeller/core/ (diagram-core) - modeller/ui/ (diagram-ui) - modeller/vscode/ (vscode-modeller extension) - viewer/vscode/ (vscode-viewer extension) Benefits: - Feature grouping: related components are together - Clearer organization: LSP server + extension in same folder - No more awkward nesting (crates/syster-lsp/crates/syster-lsp) Updated: - Cargo.toml workspace configuration - package.json workspaces - devcontainer.json paths - README.md documentation - copilot-instructions.md
- Renamed core/ to base/ - Moved lsp/server to language-server/ - Moved lsp/vscode to language-client/ - Moved modeller/vscode to modeller/ - Moved viewer/vscode to viewer/ - Moved modeller/core to diagram-core/ - Moved modeller/ui to diagram-ui/ - Removed root-level Cargo.toml, package.json, bun.lock - Updated CI workflow to validate structure - Updated release workflow to collect all artifacts - Updated README and copilot-instructions
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Contributor
There was a problem hiding this comment.
Pull request overview
This PR restructures the repository from a nested crates/ and editors/ directory structure to a flat, feature-based organization with top-level submodules. It also removes outdated internal documentation and improves the dev container setup.
Changes:
- Migrated submodules from nested paths (
crates/syster-*,editors/vscode-*,packages/diagram-*) to flat top-level directories (base/,cli/,language-server/, etc.) - Removed obsolete internal instruction files (chore.md, configuration.md, copilot-instructions.md, etc.)
- Updated documentation to reflect the new repository structure
- Enhanced dev container initialization to force-deinitialize submodules before re-initializing
Reviewed changes
Copilot reviewed 32 out of 33 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
.gitmodules |
Updated submodule paths from nested to flat structure |
README.md |
Updated architecture diagram, directory structure, and build instructions to reflect new layout |
.github/copilot-instructions.md |
Updated repository structure documentation and standard library path references |
.devcontainer/devcontainer.json |
Added forced submodule deinitialization before initialization and removed postCreateCommand |
.github/workflows/ci.yml |
Changed validation from Cargo.toml check to directory existence validation |
.github/workflows/release.yml |
Enhanced artifact collection and release notes with VS Code extensions and npm packages |
| Various submodule files | Removed old submodule references and added new ones |
package.json, Cargo.toml |
Removed meta-repository configuration files |
.github/instructions/*.md |
Removed internal instruction files |
.github/workflows/copilot-auto-retry.yml |
Removed auto-retry workflow |
| }, | ||
| "initializeCommand": "git submodule update --init --recursive", | ||
| "postCreateCommand": "rustc --version && cargo --version && git submodule update --init --recursive && cd editors/vscode-lsp && npm install && cd ../.. && ([ -d packages/diagram-core ] && cd packages/diagram-core && bun install || true) && ([ -d packages/diagram-ui ] && cd packages/diagram-ui && bun install || true)", | ||
| "initializeCommand": "git submodule deinit -f --all 2>/dev/null || true && git submodule update --init --recursive", |
There was a problem hiding this comment.
The --all flag for git submodule deinit does not exist. The command should use -f (force) without --all. To deinitialize all submodules, you can use git submodule deinit -f . or simply git submodule foreach --recursive git submodule deinit -f.
Suggested change
| "initializeCommand": "git submodule deinit -f --all 2>/dev/null || true && git submodule update --init --recursive", | |
| "initializeCommand": "git submodule deinit -f . 2>/dev/null || true && git submodule update --init --recursive", |
jade-codes
added a commit
that referenced
this pull request
Feb 3, 2026
* refactor: reorganize to feature-based structure BREAKING CHANGE: Repository structure completely reorganized Old structure: - crates/syster-base, crates/syster-cli, crates/syster-lsp - editors/vscode-lsp, editors/vscode-modeller, editors/vscode-viewer - packages/diagram-core, packages/diagram-ui New structure: - core/ (syster-base) - cli/ (syster-cli) - lsp/server/ (syster-lsp) - lsp/vscode/ (vscode-lsp extension) - modeller/core/ (diagram-core) - modeller/ui/ (diagram-ui) - modeller/vscode/ (vscode-modeller extension) - viewer/vscode/ (vscode-viewer extension) Benefits: - Feature grouping: related components are together - Clearer organization: LSP server + extension in same folder - No more awkward nesting (crates/syster-lsp/crates/syster-lsp) Updated: - Cargo.toml workspace configuration - package.json workspaces - devcontainer.json paths - README.md documentation - copilot-instructions.md * refactor: restructure repo - rename core to base, flatten submodules - Renamed core/ to base/ - Moved lsp/server to language-server/ - Moved lsp/vscode to language-client/ - Moved modeller/vscode to modeller/ - Moved viewer/vscode to viewer/ - Moved modeller/core to diagram-core/ - Moved modeller/ui to diagram-ui/ - Removed root-level Cargo.toml, package.json, bun.lock - Updated CI workflow to validate structure - Updated release workflow to collect all artifacts - Updated README and copilot-instructions * fix: update devcontainer postCreateCommand path * fix: remove postCreateCommand from devcontainer * Update .github/copilot-instructions.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update .github/copilot-instructions.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * docs: add architecture diagram to README * chore: update pipelines submodule to latest --------- Co-authored-by: Jade Wilson <jade_@LAPTOP-TB2FDPJ4.localdomain> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
jade-codes
added a commit
that referenced
this pull request
Feb 3, 2026
* refactor: reorganize to feature-based structure BREAKING CHANGE: Repository structure completely reorganized Old structure: - crates/syster-base, crates/syster-cli, crates/syster-lsp - editors/vscode-lsp, editors/vscode-modeller, editors/vscode-viewer - packages/diagram-core, packages/diagram-ui New structure: - core/ (syster-base) - cli/ (syster-cli) - lsp/server/ (syster-lsp) - lsp/vscode/ (vscode-lsp extension) - modeller/core/ (diagram-core) - modeller/ui/ (diagram-ui) - modeller/vscode/ (vscode-modeller extension) - viewer/vscode/ (vscode-viewer extension) Benefits: - Feature grouping: related components are together - Clearer organization: LSP server + extension in same folder - No more awkward nesting (crates/syster-lsp/crates/syster-lsp) Updated: - Cargo.toml workspace configuration - package.json workspaces - devcontainer.json paths - README.md documentation - copilot-instructions.md * refactor: restructure repo - rename core to base, flatten submodules - Renamed core/ to base/ - Moved lsp/server to language-server/ - Moved lsp/vscode to language-client/ - Moved modeller/vscode to modeller/ - Moved viewer/vscode to viewer/ - Moved modeller/core to diagram-core/ - Moved modeller/ui to diagram-ui/ - Removed root-level Cargo.toml, package.json, bun.lock - Updated CI workflow to validate structure - Updated release workflow to collect all artifacts - Updated README and copilot-instructions * fix: update devcontainer postCreateCommand path * fix: remove postCreateCommand from devcontainer * Update .github/copilot-instructions.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update .github/copilot-instructions.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * docs: add architecture diagram to README * chore: update pipelines submodule to latest --------- Co-authored-by: jade-codes <jade_@LAPTOP-TB2FDPJ4.localdomain> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
jade-codes
added a commit
that referenced
this pull request
Feb 3, 2026
* refactor: reorganize to feature-based structure BREAKING CHANGE: Repository structure completely reorganized Old structure: - crates/syster-base, crates/syster-cli, crates/syster-lsp - editors/vscode-lsp, editors/vscode-modeller, editors/vscode-viewer - packages/diagram-core, packages/diagram-ui New structure: - core/ (syster-base) - cli/ (syster-cli) - lsp/server/ (syster-lsp) - lsp/vscode/ (vscode-lsp extension) - modeller/core/ (diagram-core) - modeller/ui/ (diagram-ui) - modeller/vscode/ (vscode-modeller extension) - viewer/vscode/ (vscode-viewer extension) Benefits: - Feature grouping: related components are together - Clearer organization: LSP server + extension in same folder - No more awkward nesting (crates/syster-lsp/crates/syster-lsp) Updated: - Cargo.toml workspace configuration - package.json workspaces - devcontainer.json paths - README.md documentation - copilot-instructions.md * refactor: restructure repo - rename core to base, flatten submodules - Renamed core/ to base/ - Moved lsp/server to language-server/ - Moved lsp/vscode to language-client/ - Moved modeller/vscode to modeller/ - Moved viewer/vscode to viewer/ - Moved modeller/core to diagram-core/ - Moved modeller/ui to diagram-ui/ - Removed root-level Cargo.toml, package.json, bun.lock - Updated CI workflow to validate structure - Updated release workflow to collect all artifacts - Updated README and copilot-instructions * fix: update devcontainer postCreateCommand path * fix: remove postCreateCommand from devcontainer * Update .github/copilot-instructions.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update .github/copilot-instructions.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * docs: add architecture diagram to README * chore: update pipelines submodule to latest --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request primarily removes several internal developer instruction and checklist files from the
.github/instructionsdirectory, and updates documentation to reflect recent repository restructuring and improvements to submodule handling. The changes streamline project onboarding and maintenance by reducing duplication and outdated guidance, and by clarifying the new project structure.Documentation and Configuration Cleanup:
.github/instructions/chore.md,.github/instructions/configuration.md, and.github/instructions/copilot-instructions.md, removing internal checklists, configuration guidelines, and Rust development instructions that are now either redundant or out of date. [1] [2] [3]Repository Structure and Onboarding Documentation Updates:
.github/copilot-instructions.mdto reflect the new repository structure, replacing references to the oldcrates/andeditors/vscode/directories with the new top-level submodules (e.g.,base/,cli/,language-server/,language-client/, etc.), and clarified where the SysML standard library is located. [1] [2]Dev Container Improvements:
.devcontainer/devcontainer.jsonto forcibly deinitialize all submodules before re-initializing them, improving consistency for contributors setting up the development environment.## Description